import { service } from '../index'
import { IhomeData, IlistData, IClassify, ICity } from '../typing'

type Res<T> = Promise<ItypeAPI<T>>;
// 一般情况下响应数据返回的这三个参数，
// 但不排除后端返回其它的可能性，
interface ItypeAPI<T> {
  msg: T; // 返回状态码的信息，如请求成功等
  code: number; //返回后端自定义的200，404，500这种状态码
}
// 线上课程显示状态
export function getShow(data:any) : Res<any>  {
  return service.post<IhomeData>('/index/getShow',data)
}
// 首页数据
export function getHome(data:any) : Res<any>  {
  return service.post<IhomeData>('/index/index',data)
}

// 通知公告
export function getNotice(data:any) : Res<any> {
  return service.post<IlistData>('/index/notice', data)
}

// 公告详情
export function getNoticeDetail(data): Res<any>{
  return service.post('/index/noticeDetail', data)
}

// 赛事列表
export function getMatchList(data) : Res<any> {
  return service.post<IlistData>('/index/matchList', data)
}

// 活动列表
export function getActiveList(data): Res<any> {
  return service.post<IlistData>('/index/activeList', data)
}

// 赛事分类
export function getMatchClassify(): Res<any> {
  return service.post<IClassify>('/index/matchClassify')
}

// 赛事详情
export function getMatchDetail(data): Res<any> {
  return service.post<object>('/index/matchDetail', data)
}

// 活动分类
export function getActiveClassify(): Res<any> {
  return service.post<IClassify>('/index/activeClassify')
}

// 活动详情
export function getActiveDetail(data): Res<any> {
  return service.post<IClassify>('/index/activeDetail', data)
}

// 赛事城市数据
export function getMatchCity(data): Res<any> {
  return service.post<object[]>('/index/matchCity', data)
}

// 活动城市数据
export function getActiveCity(data): Res<any> {
  return service.post<object[]>('/index/activeCity', data)
}

// 新闻资讯列表
export function getNewsList(data): Res<any> {
  return service.post<IlistData>('/index/newsList', data)
}

// 新闻详情
export function getNewDetail(data) : Res<any>{
  return service.post('/index/newDetail', data)
}

// 成绩查询日期数据
export function getYear() : Res<any>{
  return service.post<ICity>('/index/getYear')
}

// 赛事成绩查询列表
export function getMatchAchievement(data) : Res<any>{
  return service.post<IlistData>('/index/matchAchievement', data)
}

// 报名查询页面
export function getEnrollQuery(data) : Res<any>{
  return service.post<{ name: string; id: number }>('/index/enrollQuery', data)
}

// 成绩查询页面
export function getAchievement(data) : Res<any>{
  return service.post<{ name: string; id: number }>('/index/achievement', data)
}

// 报名查询接口
export function getEnrollQueryDo(data) : Res<any>{
  return service.post<object>('/index/enrollQueryDo', data)
}

// 成绩查询接口
export function getSearchResult(data): Res<any> {
  return service.post<object>('/index/searchResult', data)
}

// 团报页面
export function getTeam(data): Res<any> {
  return service.post('/index/team', data)
}

// 团报组别
export function getTeamGroup(data): Res<any> {
  return service.post<object>('/order/teamGroup', data)
}

// 核对密码
export function getCheckPwd(data): Res<any> {
  return service.post<string>('/index/checkPwd', data)
}

// 帮助文档
export function getHelp() : Res<any>{
  return service.post<IlistData>('/index/help')
}

// 帮助文档详情
export function getHelpDetail(data): Res<any> {
  return service.post('/index/helpDetail', data)
}

// 帮助文档详情
export function getconfig(): Res<any> {
  return service.post<object>('/index/getconfig')
}

// 关于我们
export function getabout(): Res<any> {
  return service.post<object>('/index/about')
}

// 获取视频分类
export function getClassify(data): Res<any> {
  return service.post<object>('/index/getClassify',data)
}

// 获取视频
export function videoList(data): Res<any> {
  return service.post<object>('/index/videoList',data)
}
// 视频信息
export function videoInfo(data): Res<any> {
  return service.post<object>('/index/videoInfo',data)
}
// 课程列表
export function Course(data): Res<any> {
  return service.post<object>('/Course/course',data)
}
// 课程详情
export function courseDetail(data): Res<any> {
  return service.post<object>('/course/courseDetail',data)
}
// 收获地址列表
export function userAddress(data): Res<any> {
  return service.post<object>('/user/address',data)
}
//添加或修改收获地址
export function addressDo(data): Res<any> {
  return service.post<object>('/user/addressDo',data)
}
//删除
export function addressDel(data): Res<any> {
  return service.post<object>('/user/addressDel',data)
}
//收货地址详情
export function addressInfo(data): Res<any> {
  return service.post<object>('/user/addressInfo',data)
}
//默认地址设置
export function setDefault(data): Res<any> {
  return service.post<object>('/user/setDefault',data)
}
//确人订单
export function trueOrder(data): Res<any> {
  return service.post<object>('/course/trueOrder',data)
}
//添加订单
export function addOrder(data): Res<any> {
  return service.post<object>('/course/addOrder',data)
}
//收银台
export function cashier(data): Res<any> {
  return service.post<object>('/course/cashier',data)
}
//订单拉起支付
export function orderPay(data): Res<any> {
  return service.post<object>('/course/orderPay',data)
}
//课程报名列表
export function orderList(data): Res<any> {
  return service.post<object>('/course/orderList',data)
}
//报名订单详情
export function orderDetail(data): Res<any> {
  return service.post<object>('/course/orderDetail',data)
}
//物流追踪
export function orderLogistics(data): Res<any> {
  return service.post<object>('/course/orderLogistics',data)
}
//取消报名
export function orderCancel(data): Res<any> {
  return service.post<object>('/course/orderCancel',data)
}
//视频列表
export function courseVideoList(data): Res<any> {
  return service.post<object>('/course/videoList',data)
}
//增加观看次数
export function addViews(data): Res<any> {
  return service.post<object>('/course/addViews',data)
}
//视频详情
export function videoDetail(data): Res<any> {
  return service.post<object>('/course/videoDetail',data)
}